package com.foreknow.demo2;

/**
 * 对数组的排序(重要)
 * 冒泡排序： 相邻的两个元素进行比较，较大的数放到后面，不断的进行这个过程,最后较大的数会放到末尾
 * 已知一个数组
 * 15   7    22    14    8    16   10
 * 7    15   22    14    8    16   10
 * 7    15   22    14    8    16   10
 * 7    15   14    22    8    16   10
 * ....
 * 7    15   14    8    16    10  | 22
 *                         无序区    有序区
 */
public class ArrayDemo5 {

    public static int[] sort(int[] array) {
        for (int i = 1;i < array.length;i++){
            for(int j = 0;j < array.length - i;j++) {
                //相邻的两个元素进行比较,如果条件成立交换位置
                if(array[j] > array[j+1]) {
                    int temp  = array[j];
                    array[j] = array[j+1];
                    array[j+1] = temp;
                }
            }
        }

        return array;
    }

    public static void main(String[] args) {
        int[] array = {15,7,22,14,8,16,10};
        int[] k = ArrayDemo5.sort(array);
        //遍历数组显示排序后的结果
        for (int i = 0;i<k.length;i++){
            System.out.println(k[i]);
        }

        //定义一个数组
//        int[] array = {15,7,22,14,8,16,10};
//        for (int i = 1;i < array.length;i++){
//            for(int j = 0;j < array.length - i;j++) {
//                //相邻的两个元素进行比较,如果条件成立交换位置
//                if(array[j] > array[j+1]) {
//                    int temp  = array[j];
//                    array[j] = array[j+1];
//                    array[j+1] = temp;
//                }
//            }
//        }
//
//        //遍历数组显示排序后的结果
//        for (int i = 0;i<array.length;i++){
//            System.out.println(array[i]);
//        }

//
//        int[] a = new int[10];
//        a[0] = 10;
//        System.out.println(a[0]);
    }
}
